fstats_distributions Module



Interfaces

interface

  • public pure elemental function distribution_function(this, x) result(rst)

    Defines the interface for a probability distribution function.

    Arguments

    Type IntentOptional Attributes Name
    class(distribution), intent(in) :: this

    The distribution object.

    real(kind=real64), intent(in) :: x

    The value at which to evaluate the function.

    Return Value real(kind=real64)

    The value of the function.

interface

  • public pure function distribution_property(this) result(rst)

    Computes the value of a distribution property.

    Arguments

    Type IntentOptional Attributes Name
    class(distribution), intent(in) :: this

    The distribution object.

    Return Value real(kind=real64)

    The property value.

interface

  • public subroutine distribution_recenter(this, x)

    Recenters the distribution about the supplied value.

    Arguments

    Type IntentOptional Attributes Name
    class(distribution), intent(inout) :: this

    The distribution object.

    real(kind=real64), intent(in) :: x

    The value about which to recenter.

interface

  • public pure function multivariate_distribution_function(this, x) result(rst)

    Defines an interface for a multivariate probability distribution function.

    Arguments

    Type IntentOptional Attributes Name
    class(multivariate_distribution), intent(in) :: this

    The distribution object.

    real(kind=real64), intent(in), dimension(:) :: x

    The values at which to evaluate the function.

    Return Value real(kind=real64)

    The value of the function.


Derived Types

type, public, extends(distribution) ::  binomial_distribution

Defines a binomial distribution. The binomial distribution describes the probability p of getting k successes in n independent trials.

Components

Type Visibility Attributes Name Initial
integer(kind=int32), public :: n

The number of independent trials.

real(kind=real64), public :: p

The success probability for each trial. This parameter must exist on the set [0, 1].

Type-Bound Procedures

procedure, public :: cdf => bd_cdf
procedure, public :: defined_range => bd_range
procedure, public :: mean => bd_mean
procedure, public :: median => bd_median
procedure, public :: mode => bd_mode
procedure, public :: pdf => bd_pdf
procedure, public :: recenter => bd_recenter
procedure, public :: standardized_variable => dist_std_var
procedure, public :: variance => bd_variance

type, public, extends(distribution) ::  chi_squared_distribution

Defines a Chi-squared distribution.

Components

Type Visibility Attributes Name Initial
integer(kind=int32), public :: dof

The number of degrees of freedom.

Type-Bound Procedures

procedure, public :: cdf => cs_cdf
procedure, public :: defined_range => cs_range
procedure, public :: mean => cs_mean
procedure, public :: median => cs_median
procedure, public :: mode => cs_mode
procedure, public :: pdf => cs_pdf
procedure, public :: recenter => cs_recenter
procedure, public :: standardized_variable => dist_std_var
procedure, public :: variance => cs_variance

type, public ::  distribution

Defines a probability distribution.

Type-Bound Procedures

procedure(distribution_function), public, deferred, pass :: cdf
procedure, public :: defined_range => dist_defined_range
procedure(distribution_property), public, deferred, pass :: mean
procedure(distribution_property), public, deferred, pass :: median
procedure(distribution_property), public, deferred, pass :: mode
procedure(distribution_function), public, deferred, pass :: pdf
procedure(distribution_recenter), public, deferred, pass :: recenter
procedure, public :: standardized_variable => dist_std_var
procedure(distribution_property), public, deferred, pass :: variance

type, public, extends(distribution) ::  f_distribution

Defines an F-distribution.

Components

Type Visibility Attributes Name Initial
real(kind=real64), public :: d1

The measure of degrees of freedom for the first data set.

real(kind=real64), public :: d2

The measure of degrees of freedom for the second data set.

Type-Bound Procedures

procedure, public :: cdf => fd_cdf
procedure, public :: defined_range => fd_range
procedure, public :: mean => fd_mean
procedure, public :: median => fd_median
procedure, public :: mode => fd_mode
procedure, public :: pdf => fd_pdf
procedure, public :: recenter => fd_recenter
procedure, public :: standardized_variable => dist_std_var
procedure, public :: variance => fd_variance

type, public, extends(distribution) ::  log_normal_distribution

Defines a normal distribution.

Components

Type Visibility Attributes Name Initial
real(kind=real64), public :: mean_value

The mean value of the distribution.

real(kind=real64), public :: standard_deviation

The standard deviation of the distribution.

Type-Bound Procedures

procedure, public :: cdf => lnd_cdf
procedure, public :: defined_range => lnd_range
procedure, public :: mean => lnd_mean
procedure, public :: median => lnd_median
procedure, public :: mode => lnd_mode
procedure, public :: pdf => lnd_pdf
procedure, public :: recenter => lnd_recenter
procedure, public :: standardized_variable => dist_std_var
procedure, public :: variance => lnd_variance

type, public ::  multivariate_distribution

Defines a multivariate probability distribution.

Type-Bound Procedures

procedure(multivariate_distribution_function), public, deferred, pass :: pdf ..\..\

Computes the probability density function.<\p>

Defines a multivariate normal (Gaussian) distribution.

Type-Bound Procedures

procedure, public :: get_cholesky_factored_matrix => mvnd_get_cholesky
procedure, public :: get_covariance => mvnd_get_covariance
procedure, public :: get_means => mvnd_get_means
procedure, public :: initialize => mvnd_init
procedure, public :: pdf => mvnd_pdf
procedure, public :: set_means => mvnd_update_mean

type, public, extends(distribution) ::  normal_distribution

Defines a normal distribution.

Components

Type Visibility Attributes Name Initial
real(kind=real64), public :: mean_value

The mean value of the distribution.

real(kind=real64), public :: standard_deviation

The standard deviation of the distribution.

Type-Bound Procedures

procedure, public :: cdf => nd_cdf
procedure, public :: defined_range => dist_defined_range
procedure, public :: mean => nd_mean
procedure, public :: median => nd_median
procedure, public :: mode => nd_mode
procedure, public :: pdf => nd_pdf
procedure, public :: recenter => nd_recenter
procedure, public :: standardize => nd_standardize
procedure, public :: standardized_variable => dist_std_var
procedure, public :: variance => nd_variance

type, public, extends(distribution) ::  poisson_distribution

Defines a Poisson distribution.

Components

Type Visibility Attributes Name Initial
real(kind=real64), public :: occrence_rate

The rate of occurrences.

Type-Bound Procedures

procedure, public :: cdf => pd_cdf
procedure, public :: defined_range => pd_range
procedure, public :: mean => pd_mean
procedure, public :: median => pd_median
procedure, public :: mode => pd_mode
procedure, public :: pdf => pd_pdf
procedure, public :: recenter => pd_recenter
procedure, public :: standardized_variable => dist_std_var
procedure, public :: variance => pd_variance

type, public, extends(distribution) ::  t_distribution

Defines Student's T-Distribution.

Components

Type Visibility Attributes Name Initial
real(kind=real64), public :: dof

The number of degrees of freedom.

Type-Bound Procedures

procedure, public :: cdf => td_cdf
procedure, public :: defined_range => dist_defined_range
procedure, public :: mean => td_mean
procedure, public :: median => td_median
procedure, public :: mode => td_mode
procedure, public :: pdf => td_pdf
procedure, public :: recenter => td_recenter
procedure, public :: standardized_variable => dist_std_var
procedure, public :: variance => td_variance